The present invention relates to a system for comparing two numbers or words, and more particularly to a system for determining whether the ratio of two binary numbers exceeds a reference value.
In the past, the high-speed comparison of two binary numbers in a memory device required a substantial amount of memory capacity. For example, a read-only memory (ROM) or a programmable read-only memory (PROM) for comparing the ratio of all possible combinations of two eight-bit numbers against a predetermined reference ratio might require over 65,000 bits of memory capacity. These memory requirements increase exponentially as the number of bits in the numbers to be compared increases.
The reason that such a substantial amount of memory capacity has been required in the past, particularly when the numbers to be compared contain more than just a few bits of information, is due largely to the fact that all of the bits in one number are compared against all of the bits of the other number at one time. The total number of bits in both numbers determines the number of input signals to the memory unit, and is determinative of the number of memory locations required. For example, the comparison of two eight-bit numbers provides sixteen input signals and requires approximately 2.sup.16 memory locations.
Attempts at reducing the total number of required memory locations can result in a reduction in the reliability of the comparison process. For example, if only the more significant bits of each number are examined to thereby reduce the total number of input signals, an intelligent result cannot be obtained in those situations in which the difference between the two numbers is small and the more significant bits are the same or almost the same for both numbers. Other approaches using switches or shift registers, for example, have resulted in systems that are considerably slower because of their relative complexity and the time required to shift bits of information or perform switching operations.